home *** CD-ROM | disk | FTP | other *** search
/ Apple Developer Connection 1998 Fall: Game Toolkit / Disc.iso / SDKs / QuickTime Mac / AIncludes / QD3DWinViewer.a < prev    next >
Encoding:
Text File  |  1998-04-09  |  17.3 KB  |  585 lines  |  [TEXT/MPS ]

  1. ;
  2. ;    File:        QD3DWinViewer.a
  3. ;
  4. ;    Contains:    Win32 Viewer Controller Interface File.                                
  5. ;
  6. ;    Version:    Technology:    Quickdraw 3D 1.5.4
  7. ;                Release:    QuickTime 3.0
  8. ;
  9. ;    Copyright:    © 1995-1998 by Apple Computer, Inc., all rights reserved.
  10. ;
  11. ;    Bugs?:        Please include the the file and version information (from above) with
  12. ;                the problem description.  Developers belonging to one of the Apple
  13. ;                developer programs can submit bug reports to:
  14. ;
  15. ;                    devsupport@apple.com
  16. ;
  17. ;
  18.     IF &TYPE('__QD3DWINVIEWER__') = 'UNDEFINED' THEN
  19. __QD3DWINVIEWER__ SET 1
  20.  
  21.     IF &TYPE('__QD3D__') = 'UNDEFINED' THEN
  22.     include 'QD3D.a'
  23.     ENDIF
  24.     IF &TYPE('__QD3DGROUP__') = 'UNDEFINED' THEN
  25.     include 'QD3DGroup.a'
  26.     ENDIF
  27.  
  28.     IF TARGET_OS_WIN32 THEN
  29. ; typedef void *                        TQ3ViewerObject
  30.  
  31.  
  32. kQ3ViewerShowBadge                EQU        $01
  33. kQ3ViewerActive                    EQU        $02
  34. kQ3ViewerControllerVisible        EQU        $04
  35. kQ3ViewerButtonCamera            EQU        $08
  36. kQ3ViewerButtonTruck            EQU        $10
  37. kQ3ViewerButtonOrbit            EQU        $20
  38. kQ3ViewerButtonZoom                EQU        $40
  39. kQ3ViewerButtonDolly            EQU        $80
  40. kQ3ViewerButtonReset            EQU        $0100
  41. kQ3ViewerButtonNone                EQU        $0200
  42. kQ3ViewerOutputTextMode            EQU        $0400
  43. kQ3ViewerDraggingInOff            EQU        $0800
  44. kQ3ViewerDefault                EQU        $8000
  45.  
  46.  
  47. kQ3ViewerEmpty                    EQU        0
  48. kQ3ViewerHasModel                EQU        $01
  49. kQ3ViewerHasUndo                EQU        $02
  50.  
  51. ; typedef long                            TQ3ViewerCameraView
  52. kQ3ViewerCameraRestore            EQU        0
  53. kQ3ViewerCameraFit                EQU        1
  54. kQ3ViewerCameraFront            EQU        2
  55. kQ3ViewerCameraBack                EQU        3
  56. kQ3ViewerCameraLeft                EQU        4
  57. kQ3ViewerCameraRight            EQU        5
  58. kQ3ViewerCameraTop                EQU        6
  59. kQ3ViewerCameraBottom            EQU        7
  60.  
  61. ; ******************************************************************************
  62. ; **                                                                             **
  63. ; **                                WM_NOTIFY structures                           **
  64. ; **                                                                             **
  65. ; ****************************************************************************
  66.  
  67. TQ3ViewerDropFiles        RECORD 0
  68. nmhdr                     ds.l    1                ; offset: $0 (0)
  69. hDrop                     ds.l    1                ; offset: $4 (4)
  70. sizeof                     EQU *                    ; size:   $8 (8)
  71.                         ENDR
  72. TQ3ViewerSetView        RECORD 0
  73. nmhdr                     ds.l    1                ; offset: $0 (0)
  74. view                     ds.l    1                ; offset: $4 (4)
  75. sizeof                     EQU *                    ; size:   $8 (8)
  76.                         ENDR
  77. TQ3ViewerSetViewNumber    RECORD 0
  78. nmhdr                     ds.l    1                ; offset: $0 (0)
  79. number                     ds.l    1                ; offset: $4 (4)
  80. sizeof                     EQU *                    ; size:   $8 (8)
  81.                         ENDR
  82. TQ3ViewerButtonSet        RECORD 0
  83. nmhdr                     ds.l    1                ; offset: $0 (0)
  84. button                     ds.l    1                ; offset: $4 (4)
  85. sizeof                     EQU *                    ; size:   $8 (8)
  86.                         ENDR
  87. ; ******************************************************************************
  88. ; **                                                                             **
  89. ; **                                WM_NOTIFY defines                               **
  90. ; **                                                                             **
  91. ; ****************************************************************************
  92.  
  93. ; ******************************************************************************
  94. ; **                                                                             **
  95. ; **                            Win32 Window Class Name                           **
  96. ; **        Can be passed as a parameter to CreateWindow or CreateWindowEx       **
  97. ; **                                                                             **
  98. ; ****************************************************************************
  99.  
  100.  
  101. ; ******************************************************************************
  102. ; **                                                                             **
  103. ; **                            Win32 Clipboard type                              **
  104. ; **                                                                             **
  105. ; ****************************************************************************
  106.  
  107. ; ******************************************************************************
  108. ; **                                                                             **
  109. ; **        Return viewer version number                                         **
  110. ; **                                                                             **
  111. ; ****************************************************************************
  112.  
  113. ;
  114. ; extern TQ3Status Q3WinViewerGetVersion(unsigned long *majorRevision, unsigned long *minorRevision)
  115. ;
  116.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  117.         IMPORT_CFM_FUNCTION Q3WinViewerGetVersion
  118.     ENDIF
  119.  
  120.  
  121. ; ******************************************************************************
  122. ; **                                                                             **
  123. ; **        Return viewer release version number                                 **
  124. ; **        (in 'vers' format - e.g. 0x01518000 ==> 1.5.1 release)                 **
  125. ; **                                                                             **
  126. ; ****************************************************************************
  127.  
  128. ;
  129. ; extern TQ3Status Q3WinViewerGetReleaseVersion(unsigned long *releaseRevision)
  130. ;
  131.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  132.         IMPORT_CFM_FUNCTION Q3WinViewerGetReleaseVersion
  133.     ENDIF
  134.  
  135.  
  136. ; ******************************************************************************
  137. ; **                                                                             **
  138. ; **                        Creation and destruction                             **
  139. ; **                Note that this is not a QuickDraw 3D object                     **
  140. ; **                                                                             **
  141. ; ****************************************************************************
  142.  
  143. ;
  144. ; extern TQ3ViewerObject Q3WinViewerNew(HWND window, const RECT *rect, unsigned long flags)
  145. ;
  146.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  147.         IMPORT_CFM_FUNCTION Q3WinViewerNew
  148.     ENDIF
  149.  
  150. ;
  151. ; extern TQ3Status Q3WinViewerDispose(TQ3ViewerObject viewer)
  152. ;
  153.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  154.         IMPORT_CFM_FUNCTION Q3WinViewerDispose
  155.     ENDIF
  156.  
  157.  
  158. ; ******************************************************************************
  159. ; **                                                                             **
  160. ; **                    Functions to attach data to a WinViewer                     **
  161. ; **                                                                             **
  162. ; ****************************************************************************
  163.  
  164. ;
  165. ; extern TQ3Status Q3WinViewerUseFile(TQ3ViewerObject viewer, HANDLE fileHandle)
  166. ;
  167.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  168.         IMPORT_CFM_FUNCTION Q3WinViewerUseFile
  169.     ENDIF
  170.  
  171. ;
  172. ; extern TQ3Status Q3WinViewerUseData(TQ3ViewerObject viewer, void *data, unsigned long size)
  173. ;
  174.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  175.         IMPORT_CFM_FUNCTION Q3WinViewerUseData
  176.     ENDIF
  177.  
  178.  
  179. ; ******************************************************************************
  180. ; **                                                                             **
  181. ; **                Functions to write data out from the WinViewer                 **
  182. ; **                                                                             **
  183. ; ****************************************************************************
  184.  
  185. ;
  186. ; extern TQ3Status Q3WinViewerWriteFile(TQ3ViewerObject viewer, HANDLE fileHandle)
  187. ;
  188.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  189.         IMPORT_CFM_FUNCTION Q3WinViewerWriteFile
  190.     ENDIF
  191.  
  192. ;
  193. ; extern TQ3Status Q3WinViewerWriteData(TQ3ViewerObject viewer, void *data, unsigned long dataSize, unsigned long *actualDataSize)
  194. ;
  195.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  196.         IMPORT_CFM_FUNCTION Q3WinViewerWriteData
  197.     ENDIF
  198.  
  199.  
  200. ; ******************************************************************************
  201. ; **                                                                             **
  202. ; **        Use this function to force the WinViewer to re-draw                     **
  203. ; **                                                                             **
  204. ; ****************************************************************************
  205.  
  206. ;
  207. ; extern TQ3Status Q3WinViewerDraw(TQ3ViewerObject viewer)
  208. ;
  209.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  210.         IMPORT_CFM_FUNCTION Q3WinViewerDraw
  211.     ENDIF
  212.  
  213. ;
  214. ; extern TQ3Status Q3WinViewerDrawContent(TQ3ViewerObject viewer)
  215. ;
  216.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  217.         IMPORT_CFM_FUNCTION Q3WinViewerDrawContent
  218.     ENDIF
  219.  
  220. ;
  221. ; extern TQ3Status Q3WinViewerDrawControlStrip(TQ3ViewerObject viewer)
  222. ;
  223.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  224.         IMPORT_CFM_FUNCTION Q3WinViewerDrawControlStrip
  225.     ENDIF
  226.  
  227.  
  228. ; ******************************************************************************
  229. ; **                                                                             **
  230. ; **        Function used by the WinViewer to filter and handle events             **
  231. ; **                                                                             **
  232. ; ****************************************************************************
  233.  
  234. ;
  235. ; extern BOOL Q3WinViewerMouseDown(TQ3ViewerObject viewer, long x, long y)
  236. ;
  237.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  238.         IMPORT_CFM_FUNCTION Q3WinViewerMouseDown
  239.     ENDIF
  240.  
  241. ;
  242. ; extern BOOL Q3WinViewerContinueTracking(TQ3ViewerObject viewer, long x, long y)
  243. ;
  244.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  245.         IMPORT_CFM_FUNCTION Q3WinViewerContinueTracking
  246.     ENDIF
  247.  
  248. ;
  249. ; extern BOOL Q3WinViewerMouseUp(TQ3ViewerObject viewer, long x, long y)
  250. ;
  251.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  252.         IMPORT_CFM_FUNCTION Q3WinViewerMouseUp
  253.     ENDIF
  254.  
  255.  
  256. ; ******************************************************************************
  257. ; **                                                                             **
  258. ; **        This function returns a Bitmap of the contents of the                  **
  259. ; **        WinViewer's window.  The application should dispose the Bitmap.         **
  260. ; **                                                                             **
  261. ; ****************************************************************************
  262.  
  263. ;
  264. ; extern HBITMAP Q3WinViewerGetBitmap(TQ3ViewerObject viewer)
  265. ;
  266.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  267.         IMPORT_CFM_FUNCTION Q3WinViewerGetBitmap
  268.     ENDIF
  269.  
  270.  
  271. ; ******************************************************************************
  272. ; **                                                                             **
  273. ; **                    Calls for dealing with Buttons                             **
  274. ; **                                                                             **
  275. ; ****************************************************************************
  276.  
  277. ;
  278. ; extern TQ3Status Q3WinViewerGetButtonRect(TQ3ViewerObject viewer, unsigned long button, RECT *rectangle)
  279. ;
  280.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  281.         IMPORT_CFM_FUNCTION Q3WinViewerGetButtonRect
  282.     ENDIF
  283.  
  284. ;
  285. ; extern unsigned long Q3WinViewerGetCurrentButton(TQ3ViewerObject viewer)
  286. ;
  287.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  288.         IMPORT_CFM_FUNCTION Q3WinViewerGetCurrentButton
  289.     ENDIF
  290.  
  291. ;
  292. ; extern TQ3Status Q3WinViewerSetCurrentButton(TQ3ViewerObject viewer, unsigned long button)
  293. ;
  294.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  295.         IMPORT_CFM_FUNCTION Q3WinViewerSetCurrentButton
  296.     ENDIF
  297.  
  298.  
  299. ; ******************************************************************************
  300. ; **                                                                             **
  301. ; **        Functions to set/get the group to be displayed by the WinViewer.     **
  302. ; **                                                                             **
  303. ; ****************************************************************************
  304.  
  305. ;
  306. ; extern TQ3Status Q3WinViewerUseGroup(TQ3ViewerObject viewer, TQ3GroupObject group)
  307. ;
  308.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  309.         IMPORT_CFM_FUNCTION Q3WinViewerUseGroup
  310.     ENDIF
  311.  
  312. ;
  313. ; extern TQ3GroupObject Q3WinViewerGetGroup(TQ3ViewerObject viewer)
  314. ;
  315.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  316.         IMPORT_CFM_FUNCTION Q3WinViewerGetGroup
  317.     ENDIF
  318.  
  319.  
  320. ; ******************************************************************************
  321. ; **                                                                             **
  322. ; **        Functions to set/get the color used to clear the window                 **
  323. ; **                                                                             **
  324. ; ****************************************************************************
  325.  
  326. ;
  327. ; extern TQ3Status Q3WinViewerSetBackgroundColor(TQ3ViewerObject viewer, TQ3ColorARGB *color)
  328. ;
  329.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  330.         IMPORT_CFM_FUNCTION Q3WinViewerSetBackgroundColor
  331.     ENDIF
  332.  
  333. ;
  334. ; extern TQ3Status Q3WinViewerGetBackgroundColor(TQ3ViewerObject viewer, TQ3ColorARGB *color)
  335. ;
  336.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  337.         IMPORT_CFM_FUNCTION Q3WinViewerGetBackgroundColor
  338.     ENDIF
  339.  
  340.  
  341. ; ******************************************************************************
  342. ; **                                                                             **
  343. ; **        Getting/Setting a WinViewer's View object.  Disposal is needed.         **
  344. ; **                                                                             **
  345. ; ****************************************************************************
  346.  
  347. ;
  348. ; extern TQ3ViewObject Q3WinViewerGetView(TQ3ViewerObject viewer)
  349. ;
  350.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  351.         IMPORT_CFM_FUNCTION Q3WinViewerGetView
  352.     ENDIF
  353.  
  354. ;
  355. ; extern TQ3Status Q3WinViewerRestoreView(TQ3ViewerObject viewer)
  356. ;
  357.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  358.         IMPORT_CFM_FUNCTION Q3WinViewerRestoreView
  359.     ENDIF
  360.  
  361.  
  362. ; ******************************************************************************
  363. ; **                                                                             **
  364. ; **        Calls for setting/getting WinViewer flags                             **
  365. ; **                                                                             **
  366. ; ****************************************************************************
  367.  
  368. ;
  369. ; extern TQ3Status Q3WinViewerSetFlags(TQ3ViewerObject viewer, unsigned long flags)
  370. ;
  371.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  372.         IMPORT_CFM_FUNCTION Q3WinViewerSetFlags
  373.     ENDIF
  374.  
  375. ;
  376. ; extern unsigned long Q3WinViewerGetFlags(TQ3ViewerObject viewer)
  377. ;
  378.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  379.         IMPORT_CFM_FUNCTION Q3WinViewerGetFlags
  380.     ENDIF
  381.  
  382.  
  383. ; ******************************************************************************
  384. ; **                                                                             **
  385. ; **        Calls related to bounds/dimensions.  Bounds is the size of              **
  386. ; **        the window.  Dimensions can either be the Rect from the ViewHints     **
  387. ; **        or the current dimensions of the window (if you do a Set).             **
  388. ; **                                                                             **
  389. ; ****************************************************************************
  390.  
  391. ;
  392. ; extern TQ3Status Q3WinViewerSetBounds(TQ3ViewerObject viewer, RECT *bounds)
  393. ;
  394.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  395.         IMPORT_CFM_FUNCTION Q3WinViewerSetBounds
  396.     ENDIF
  397.  
  398. ;
  399. ; extern TQ3Status Q3WinViewerGetBounds(TQ3ViewerObject viewer, RECT *bounds)
  400. ;
  401.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  402.         IMPORT_CFM_FUNCTION Q3WinViewerGetBounds
  403.     ENDIF
  404.  
  405. ;
  406. ; extern TQ3Status Q3WinViewerSetDimension(TQ3ViewerObject viewer, unsigned long width, unsigned long height)
  407. ;
  408.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  409.         IMPORT_CFM_FUNCTION Q3WinViewerSetDimension
  410.     ENDIF
  411.  
  412. ;
  413. ; extern TQ3Status Q3WinViewerGetDimension(TQ3ViewerObject viewer, unsigned long *width, unsigned long *height)
  414. ;
  415.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  416.         IMPORT_CFM_FUNCTION Q3WinViewerGetDimension
  417.     ENDIF
  418.  
  419. ;
  420. ; extern TQ3Status Q3WinViewerGetMinimumDimension(TQ3ViewerObject viewer, unsigned long *width, unsigned long *height)
  421. ;
  422.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  423.         IMPORT_CFM_FUNCTION Q3WinViewerGetMinimumDimension
  424.     ENDIF
  425.  
  426.  
  427. ; ******************************************************************************
  428. ; **                                                                             **
  429. ; **                            Window related calls                             **
  430. ; **                                                                             **
  431. ; ****************************************************************************
  432.  
  433. ;
  434. ; extern TQ3Status Q3WinViewerSetWindow(TQ3ViewerObject viewer, HWND window)
  435. ;
  436.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  437.         IMPORT_CFM_FUNCTION Q3WinViewerSetWindow
  438.     ENDIF
  439.  
  440. ;
  441. ; extern HWND Q3WinViewerGetWindow(TQ3ViewerObject viewer)
  442. ;
  443.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  444.         IMPORT_CFM_FUNCTION Q3WinViewerGetWindow
  445.     ENDIF
  446.  
  447. ;
  448. ; extern TQ3ViewerObject Q3WinViewerGetViewer(HWND theWindow)
  449. ;
  450.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  451.         IMPORT_CFM_FUNCTION Q3WinViewerGetViewer
  452.     ENDIF
  453.  
  454. ;
  455. ; extern HWND Q3WinViewerGetControlStrip(TQ3ViewerObject viewer)
  456. ;
  457.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  458.         IMPORT_CFM_FUNCTION Q3WinViewerGetControlStrip
  459.     ENDIF
  460.  
  461.  
  462. ; ******************************************************************************
  463. ; **                                                                             **
  464. ; **        Adjust Cursor provided for compatibility with Mac Viewer             **
  465. ; **                                                                             **
  466. ; ****************************************************************************
  467.  
  468. ;
  469. ; extern TQ3Boolean Q3WinViewerAdjustCursor(TQ3ViewerObject viewer, long x, long y)
  470. ;
  471.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  472.         IMPORT_CFM_FUNCTION Q3WinViewerAdjustCursor
  473.     ENDIF
  474.  
  475. ;
  476. ; extern TQ3Status Q3WinViewerCursorChanged(TQ3ViewerObject viewer)
  477. ;
  478.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  479.         IMPORT_CFM_FUNCTION Q3WinViewerCursorChanged
  480.     ENDIF
  481.  
  482.  
  483. ; ******************************************************************************
  484. ; **                                                                             **
  485. ; **        Returns the state of the WinViewer.  See the constant defined at the **
  486. ; **        top of this file.                                                     **
  487. ; **                                                                             **
  488. ; ****************************************************************************
  489.  
  490. ;
  491. ; extern unsigned long Q3WinViewerGetState(TQ3ViewerObject viewer)
  492. ;
  493.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  494.         IMPORT_CFM_FUNCTION Q3WinViewerGetState
  495.     ENDIF
  496.  
  497.  
  498. ; ******************************************************************************
  499. ; **                                                                             **
  500. ; **                            Clipboard utilities                                 **
  501. ; **                                                                             **
  502. ; ****************************************************************************
  503.  
  504. ;
  505. ; extern TQ3Status Q3WinViewerClear(TQ3ViewerObject viewer)
  506. ;
  507.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  508.         IMPORT_CFM_FUNCTION Q3WinViewerClear
  509.     ENDIF
  510.  
  511. ;
  512. ; extern TQ3Status Q3WinViewerCut(TQ3ViewerObject viewer)
  513. ;
  514.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  515.         IMPORT_CFM_FUNCTION Q3WinViewerCut
  516.     ENDIF
  517.  
  518. ;
  519. ; extern TQ3Status Q3WinViewerCopy(TQ3ViewerObject viewer)
  520. ;
  521.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  522.         IMPORT_CFM_FUNCTION Q3WinViewerCopy
  523.     ENDIF
  524.  
  525. ;
  526. ; extern TQ3Status Q3WinViewerPaste(TQ3ViewerObject viewer)
  527. ;
  528.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  529.         IMPORT_CFM_FUNCTION Q3WinViewerPaste
  530.     ENDIF
  531.  
  532.  
  533. ; ******************************************************************************
  534. ; **                                                                             **
  535. ; **                                Undo                                          **
  536. ; **                                                                             **
  537. ; ****************************************************************************
  538.  
  539. ;
  540. ; extern TQ3Status Q3WinViewerUndo(TQ3ViewerObject viewer)
  541. ;
  542.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  543.         IMPORT_CFM_FUNCTION Q3WinViewerUndo
  544.     ENDIF
  545.  
  546. ;
  547. ; extern TQ3Boolean Q3WinViewerGetUndoString(TQ3ViewerObject viewer, char *theString, unsigned long stringSize, unsigned long *actualSize)
  548. ;
  549.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  550.         IMPORT_CFM_FUNCTION Q3WinViewerGetUndoString
  551.     ENDIF
  552.  
  553.  
  554. ; ******************************************************************************
  555. ; **                                                                             **
  556. ; **                            New Camera Stuff                                 **
  557. ; **                                                                             **
  558. ; ****************************************************************************
  559.  
  560. ;
  561. ; extern TQ3Status Q3WinViewerGetCameraCount(TQ3ViewerObject viewer, unsigned long *count)
  562. ;
  563.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  564.         IMPORT_CFM_FUNCTION Q3WinViewerGetCameraCount
  565.     ENDIF
  566.  
  567. ;
  568. ; extern TQ3Status Q3WinViewerSetCameraNumber(TQ3ViewerObject viewer, unsigned long cameraNo)
  569. ;
  570.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  571.         IMPORT_CFM_FUNCTION Q3WinViewerSetCameraNumber
  572.     ENDIF
  573.  
  574. ;
  575. ; extern TQ3Status Q3WinViewerSetCameraView(TQ3ViewerObject viewer, TQ3ViewerCameraView viewType)
  576. ;
  577.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  578.         IMPORT_CFM_FUNCTION Q3WinViewerSetCameraView
  579.     ENDIF
  580.  
  581.     ENDIF    ; TARGET_OS_WIN32
  582.  
  583.     ENDIF ; __QD3DWINVIEWER__ 
  584.  
  585.